package com.itheima.day12;

import java.io.*;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Scanner;
import java.util.TreeSet;


import static java.lang.Integer.parseInt;

/*键盘输入n个int类型数据,将每一个int类型的数据存储到集合
        注意:当用户输入：”886”时，停止输入。
        最后将集合里的数据写入到文件,且保证数据能够看得懂
        例如输入的数据为:44 11 22 33, 那么最后文件中的数据格式为:
        11
        22
        33
        44*/
public class Demo1 {
    public static void main(String[] args) throws IOException {
        Scanner sc=new Scanner(System.in);
        TreeSet<Integer>  ts=new TreeSet<Integer>();
        ArrayList<Integer> al=new ArrayList<Integer>();
        while (true){
            try {
                System.out.println("请输入整数：");
                String s = sc.nextLine();
                if (s.equals("886")){
                    break;
                }
                int i = Integer.parseInt(s);//字符串转换不成int的时候 报异常，通过异常来判断输入的是不是整数
                ts.add(i);
                al.add(i);
            } catch (NumberFormatException e) {
                System.out.println("数据输入异常，请按提示操作");
            }
        }
        //遍历集合 测试
    /*    for (Integer t : ts) {
            System.out.println(t);
        }
*/
    //对arrayList集合进行排序
        Collections.sort(al);
        Collections.reverse(al);
        for (Integer integer : al) {
            System.out.println(integer);
        }
        //写入文件

     BufferedWriter bw=new BufferedWriter(new FileWriter("zuoye\\a.txt"));
        for (Integer t : ts) {
            bw.write(t.toString()); //int类型乱码  保持字符的原样性
            bw.newLine();
            bw.flush();
        }
       bw.close();

    }
}
